home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / HAMRADIO / LOGBOOK.ZIP / DXPDNQSL.PRG < prev    next >
Text File  |  1986-12-08  |  3KB  |  103 lines

  1. * DXPDNQSL (c) G3ZCZ 1986
  2. * DXPEDITION SPECIAL, QSL'S ONE CONTACT PER BAND FOR EACH call IN LOG
  3. * will not print one for duplicates on each band
  4. * WILL NOT PRINT CONTEST OR ALREADY QSL'D
  5. * FOR 5 BANDS ONLY
  6.  
  7. USE &logbook INDEX &logndx
  8. STORE '                                                           ' TO blanks
  9. STORE 'O' TO tqsl
  10. ACCEPT 'Are the labels SINGLE or DOUBLE column (S or D) ' TO joe
  11. ?
  12. ACCEPT 'All QSOs or just those owed (A or O) ' TO tqsl
  13. IF joe = 'D'
  14.    STORE 1 TO joe
  15. ELSE
  16.    STORE 3 TO joe
  17. ENDIF
  18. * ASSUME SINGLE UNLESS TOLD OTHERWISE
  19. DO WHILE .NOT. EOF
  20.    IF $(call,1,1) <> '-' .AND. qslsent = '-'
  21.       IF tqsl = 'O' .AND. qslrx = 'R' .OR. tqsl = 'A'
  22.          STORE ' ' TO b1
  23.          STORE ' ' TO b2
  24.          STORE ' ' TO b3
  25.          STORE ' ' TO b4
  26.          STORE ' ' TO b5
  27.          STORE call TO tcall
  28.          DO WHILE call = tcall .AND. .NOT. EOF
  29.             STORE F TO pqso
  30.             DISP
  31.             IF b1 = ' '
  32.                *FIRST QSO
  33.                STORE band TO b1
  34.                STORE T TO pqso
  35.             ELSE
  36.                IF band = b1
  37.                   *worked
  38.                ELSE
  39.                   IF b2 = ' '
  40.                      STORE band TO b2
  41.                      STORE T TO pqso
  42.                   ELSE
  43.                      IF band = b2
  44.                         *worked
  45.                      ELSE
  46.                         IF b3 = ' '
  47.                            STORE band TO b3
  48.                            STORE T TO pqso
  49.                         ELSE
  50.                            IF band = b3
  51.                               *worked
  52.                            ELSE
  53.                               IF b4 = ' '
  54.                                  STORE band TO b4
  55.                                  STORE T TO pqso
  56.                               ELSE
  57.                                  IF band = b4
  58.                                  ELSE
  59.                                     IF b5 = ' '
  60.                                        STORE band TO b5
  61.                                        STORE T TO pqso
  62.                                     ELSE
  63.                                        IF band = b5
  64.                                           *worked on all bands
  65.                                        ELSE
  66.                                           STORE band TO b5
  67.                                           STORE T TO pqso
  68.                                        ENDIF
  69.                                     ENDIF
  70.                                  ENDIF
  71.                               ENDIF
  72.                            ENDIF
  73.                         ENDIF
  74.                      ENDIF
  75.                   ENDIF
  76.                ENDIF
  77.             ENDIF
  78.             IF pqso
  79.                ?? '**QSL**'
  80.                REPLACE qslsent WITH 'B'
  81.                DO QSLPRINT
  82.             ENDIF
  83.             SKIP
  84.          ENDDO
  85.       ELSE
  86.          DISP
  87.          SKIP
  88.       ENDIF
  89.    ELSE
  90.       DISP
  91.       SKIP
  92.    ENDIF
  93. ENDDO
  94. IF joe = 0
  95.    STORE 2 TO joe
  96.    DO QSLPRINT
  97.    * CLEAR OUT LAST ONE
  98. ENDIF
  99. *USE
  100. RELEASE line11,line12,line13,line14,line15,tcall,tband
  101. RELEASE b1,b2,b3,b4,b5,pqso,joe,blanks,label2,tqsl
  102. RETURN
  103.